home *** CD-ROM | disk | FTP | other *** search
/ Power Programmierung / Power-Programmierung (Tewi)(1994).iso / magazine / pctchnqs / 1990 / number3 / flopwait.pas < prev    next >
Pascal/Delphi Source File  |  1990-05-15  |  710b  |  32 lines

  1. Unit FlopWait;
  2.  
  3. Interface {none}
  4.  
  5. Implementation
  6.  
  7. VAR
  8.   tickTil     : LongInt;
  9.  
  10.   TimerTicks  : LongInt ABSOLUTE $40:$6C;
  11.   motorStatus : BYTE Absolute $40:$3F;
  12.   oldStatus   : Byte;
  13.  
  14. BEGIN
  15.   oldStatus := MotorStatus;
  16.   IF MotorStatus AND $F > 0 THEN
  17.     BEGIN
  18.       Write('Loading...');
  19.       TickTil := TimerTicks + 91; {91 ticks ~= 5 seconds}
  20.       IF TickTil > $17FE80 THEN   { Hex 17FE80 = midnight }
  21.         BEGIN
  22.           Dec(TickTil, $17FE80);
  23.           REPEAT
  24.           UNTIL (MotorStatus <> OldStatus) OR
  25.                 (TimerTicks  < TickTil)
  26.         END;
  27.       REPEAT
  28.       UNTIL (MotorStatus <> oldStatus) OR
  29.             (TimerTicks  >= TickTil);
  30.     END;
  31. END.
  32.